home *** CD-ROM | disk | FTP | other *** search
/ PCMania 73 / PCMania CD73_1.iso / pcmania / render73 / Taller / castli17 / PRUEBAS.POV < prev    next >
Text File  |  1998-09-14  |  8KB  |  241 lines

  1. #include "castle20.inc"
  2. #include "colors.inc"
  3. #include "Golds.inc"
  4. #include "metals.inc"
  5. #include "skies.inc"
  6. //#include "woods.inc"
  7. #include "textures.inc"
  8.  
  9.  
  10. camera {    //prueba 1 de camara para portada
  11.    location <100, 100,-200>
  12.    direction <0.0, 0.0, 1>
  13.    up  <0.0, 1.0, 0.0>
  14.    right <1.33,0.0, 0.0>                    
  15.    look_at <100,100,0> 
  16. //   look_at <0,0,0> 
  17.  
  18.  
  19.  
  20. //  light_source {<-1500,3550,-3540> color White}
  21.   light_source {<1600,550,-3540> color White}
  22.  
  23. #declare agua=texture {
  24.     pigment{color rgb <0.258, 0.258, 0.435>}
  25.     normal {
  26.         ripples 0.35
  27.         frequency 100.0
  28.         turbulence .17
  29.         }
  30.     finish {
  31.         ambient 0.1 diffuse 0.8 phong 1
  32.         reflection 0.44
  33. //      refraction 1
  34. //      ior 1.5 
  35.         }
  36.     scale <700, 700, 700>
  37. }
  38.  
  39.  
  40.  
  41.  
  42. //plane{y,0 texture{agua}}
  43.  
  44.  
  45. sky_sphere { S_Cloud2
  46. }
  47.  
  48.  
  49.  
  50. /*
  51. //           CASTILLO
  52. //torre redonda de 10 ancho*25 de alto con ventanas usada en torbala
  53. #declare torred25=union{ 
  54.     object{secb10_10r}
  55.     object{secm10_10r translate<0,100,0>}
  56.     object{secf10_5r translate<0,200,0>}
  57. }
  58. //torre cuadrada de 15 de alto usada en torbala
  59. #declare torcua15=union{
  60.     object{secb10_10c}
  61.     object{secf10_5c translate<0,100,0>}
  62. }    
  63. //torre base lateral de la estructura principal
  64. #declare torbala=union{
  65.     object{secb20_10r rotate y*90}
  66.     object{secm20_10r translate<0,100,0>}      //ventanas
  67.     object{secm20_10r01 translate<0,200,0> rotate y*45}    //con torcol1
  68.     object{secf20_5r05 translate<0,300,0> rotate y*45}     //techo con 4 puertas
  69. //se añaden 4 torres torred25 en las esquinas
  70.     object{torred25 translate<-100,0,0>}
  71.     object{torred25 translate<-100,0,0> rotate y*90}
  72.     object{torred25 translate<-100,0,0> rotate y*-90}
  73.     object{torred25 translate<-100,0,0> rotate y*180}
  74. // se añaden 4 torres cuadradas intercaladas entre las torres redondas
  75.     object{torcua15 translate<-110,0,0> rotate y*45}
  76.     object{torcua15 translate<-110,0,0> rotate y*-45}
  77.     object{torcua15 translate<-110,0,0> rotate y*(180+45)}
  78.     object{torcua15 translate<-110,0,0> rotate y*-(180+45)}
  79.     }
  80.  
  81. //torre redonda de 10 ancho*30 de alto con torres colgantes para intercalar
  82. //entre torbalas
  83. #declare torred30=union{ 
  84.     object{secb10_10r}
  85.     object{secm10_5r translate<0,100,0>}
  86.     object{secm10_10r02 translate<0,150,0> rotate y*45}
  87.     object{secf10_5r05 translate<0,250,0> rotate y*45}
  88. }
  89.  
  90. //Ahora las definiciones para el grupo central de torres del castillo
  91. //y laterales superiores
  92. #declare torcua25=union{ //torres centinelas de base superior
  93.     object{secb10_10c}
  94.     object{secm10_10c01 translate <0,100,0>}
  95.     object{secf10_5c05 translate <0,200,0>}
  96.     object{torpan5_3 rotate y*180 translate <0,250,0>}
  97. }
  98. #declare torcua35=union{ //torres laterales de la estruc. superior princip.
  99.     object{secb10_10c}
  100.     object{secm10_10c translate<0,100,0>}
  101.     object{secm10_10c04 translate <0,200,0>}
  102.     object{secf10_5c05 translate <0,300,0>}
  103.     object{torpan5_3 rotate y*180 translate <0,350,0>}
  104. }
  105. #declare torred15=union{
  106.     object{secb10_10r}
  107.     object{secf10_5r translate<0,100,0>}
  108. }
  109.  
  110. #declare grupsup=union{
  111.     object{secb20_10r }
  112.     object{secm20_10r translate<0,100,0>}
  113.     object{secm20_10r translate<0,200,0>}
  114.     object{secm20_10r translate<0,300,0>}
  115.     object{secf20_5r translate<0,400,0>}
  116. //las 4 torres laterales del grupo superior
  117.     object{torred15 translate<-85,0,-85>}
  118.     object{torred15 translate<85,0,-85>}
  119.     object{torred15 translate<85,0,-85>}
  120.     object{torred15 translate<-85,0,85>}
  121. //las 4 torres intercaladas de 20 metros de altura
  122.     object{torcua35 translate<0,0,-120>}
  123.     object{torcua35 translate<0,0,-120> rotate y*90}
  124.     object{torcua35 translate<0,0,-120> rotate y*-90}
  125.     object{torcua35 translate<0,0,-120> rotate y*180}
  126.  
  127. #declare ristra50=union{
  128.     #declare cal=0
  129. /* el valor inicial de xa se debe a que la aspillera esta centrada en 0 y va
  130.     de  -12.50  a  12.50. Asi, si deseamos crear una ristra desde -250 a 250
  131.     xa comenzara a 250-12.50=237.50. */
  132.     #declare xa=-237.5
  133.     #while(cal!=20)
  134.      object{ aspilleraG translate<xa,0,0>}
  135.      #declare cal=cal+1
  136.      #declare xa=xa+25
  137.     #end
  138.     }
  139.  
  140. declare body50_35=union{   //cuerpo cuadrado de 50 ancho*35 alto
  141. union{
  142.     box{<-249.8,0,-250>,<249.8,400,-249> texture{texcastle}}
  143.     box{<-249.8,0,-250>,<249.8,400,-249> texture{texcastle} rotate y*90}
  144.     box{<-249.8,0,-250>,<249.8,400,-249> texture{texcastle} rotate y*-90}
  145.     box{<-249.8,0,-250>,<249.8,400,-249> texture{texcastle} rotate y*180}
  146. //techo
  147.     box{<-249.8,399,-249.8>,<249.8,400,249.8> texture{texcastle2 rotate x*90}} 
  148.     object{ristra50 translate<0,400,-250>}
  149.     object{ristra50 translate<0,400,-250> rotate y*90}
  150.     object{ristra50 translate<0,400,-250> rotate y*-90}
  151.     object{ristra50 translate<0,400,-250> rotate y*180}
  152. //4 torres laterales principales en las esquinas del castillo
  153.     object{torbala translate<-250,0,-250>}
  154.     object{torbala translate<250,0,-250>}
  155.     object{torbala translate<-250,0,-250> rotate y*180}
  156. //    object{torbala translate<250,0,-250> rotate y*180}
  157. //4 torres torred30 usadas entre las torres laterales de la base
  158.     object{torred30 translate<0,0,-260>}
  159. //    object{torred30 translate<0,0,-260> rotate y*90}
  160. //    object{torred30 translate<0,0,-260> rotate y*-90}
  161.     object{torred30 translate<0,0,-260> rotate y*180}
  162. //sigue el grupo de torres superiores
  163.     object{grupsup translate<0,400,0>}
  164. //y las 4 torres laterales superiores
  165.     object{torcua25 translate<-240,350,-240>}
  166.     object{torcua25 translate<-240,350,-240> rotate y*180}
  167.     object{torpan10_2 translate<240,350,-240>}
  168. //    object{torcua25 translate<240,350,-240>}
  169. //    object{torcua25 translate<240,350,-240> rotate y*180}
  170.  
  171.     object{colgante1 translate<-125,260,-250>}
  172.     object{colgante1 translate<125,260,-250>}
  173.     object{lateral1_2 translate<0,400,-200>}
  174. //  object{torpan5_1 translate<0,400,-230> rotate y*90}
  175. // incluimos una pequeña casita-torre en la cima
  176.     object{secbpan51 rotate y*180 translate<0,300,-260>}
  177.     object{tejpir5 scale <1,.70,1> translate<0,350,-260>}
  178.     rotate y*45
  179. //    translate<-3000,0,3000>
  180. }
  181.  
  182.  
  183.  
  184. //muralla de separación del castillo con el mar
  185. #declare ristra650=union{
  186.     #declare cal=0
  187.  el valor inicial de xa se debe a que la aspillera esta centrada en 0 y va
  188.     de  -12.50  a  12.50. Asi, si deseamos crear una ristra desde -250 a 250
  189.     xa comenzara a 250-12.50=237.50. 
  190.     #declare xa=-637.5
  191.     #while(cal!=200)
  192.      object{ aspilleraG translate<xa,0,0>}
  193.      #declare cal=cal+1
  194.      #declare xa=xa+25
  195.     #end
  196.     }
  197. union{
  198.     box{<-649.8,0,-450>,<649.8,180,-420> 
  199.         texture{texcastle rotate x*45}
  200. //        pigment{Orange}
  201.         rotate y*90}
  202.     object{ristra650 translate<0,180,-450> rotate y*90}
  203.     rotate y*45
  204. } */
  205.  
  206.  
  207.  
  208.  
  209.  
  210. #include "town.inc"
  211. object{panel1 translate<0,125,0>}
  212. object{panel2 translate<50,125,0>}
  213. object{panel3 translate<100,125,0>}
  214. object{panel4 translate<150,125,0>}
  215. object{panel5 translate<200,125,0>}
  216.  
  217. object{panel6 translate<0,75,0>}
  218. object{panel7 translate<50,75,0>}
  219. object{panel8 translate<100,75,0>}
  220. object{panel9 translate<150,75,0>}
  221. object{panel10 translate<200,75,0>}
  222.  
  223. object{panel11 translate<0,25,0>}
  224. object{panel12 translate<50,25,0>}
  225. object{panel13 translate<100,25,0>}
  226. object{panel14 translate<150,25,0>}
  227.  
  228.  
  229.  
  230. /*
  231. //suelo
  232. //box{<-400,-1,-700>,<400,1,700> pigment{Red} rotate y*45}
  233. box{<-500,-1,-700>,<500,0.1,700> 
  234. //    pigment{image_map{tga "suelo1.tga"} rotate x*90 scale<16,1,16>}
  235.     pigment{Red}
  236.     rotate y*45}
  237.  
  238.   */
  239.